﻿using System.Windows;
using Airborne.ScrumPoker.Module.Host;
using Airborne.ScrumPoker.Module.ProductOwner;
using Airborne.ScrumPoker.Module.TeamFoundation;
using Microsoft.Practices.Composite.Modularity;
using Microsoft.Practices.Composite.UnityExtensions;

namespace Airborne.ScrumPoker.Presentation.ProductOwner
{
    public class Bootstrapper: UnityBootstrapper
    {
        protected override DependencyObject CreateShell()
        {
            Shell shell = Container.Resolve<Shell>();

            shell.Show();

            return shell;
        }


        protected override IModuleEnumerator GetModuleEnumerator()
        {
            StaticModuleEnumerator staticModuleEnumerator = new StaticModuleEnumerator();
            staticModuleEnumerator.AddModule(typeof(HostModule));
            staticModuleEnumerator.AddModule(typeof(TeamFoundationModule));
            staticModuleEnumerator.AddModule(typeof(ProjectOwnerModule));
            
            return staticModuleEnumerator;
        }
    }
}
